package net.lab1024.sa.admin.module.sast.tool.domain;

import lombok.Data;

/**
 * 分析工具参数表：存储CodeQL工具的配置信息及与大模型集成的相关参数
 * @TableName t_tools_codeql
 */
@Data
public class ToolConfigEntity {
    /**
     * 报告自增ID（主键）
     */
    private Long id;

    /**
     * 由小写字母或数字组成的单词序列，以 `/` 或 `-` 分隔，用于标识和分类查询。每个查询都必须有一个唯一的 ID
     */
    private String uuid;

    /**
     * 工具名称
     */
    private String name;

    /**
     * 工具描述
     */
    private String description;

    /**
     * 工具本地存储路径（如 /opt/codeql/codeql）
     */
    private String url;

    /**
     * 检测结果存储路径，对应IRIS的OUTPUT_DIR下的文件
     */
    private String path;

    /**
     * 任务日志执行路径
     */
    private String logPath;

    /**
     * 关联大模型（对应 t_llm.llm_uuid，逻辑关联，无物理外键）
     */
    private String llmUuid;

    /**
     * 线程数（1-6），用于控制大模型并行调用数量
     */
    private Integer largemodelThreads;

    /**
     * 是否跳过后处理过滤：TRUE=跳过，FALSE=执行
     */
    private Integer skipPostFilter;

    /**
     * API批处理大小（用于大模型批量标注外部API）
     */
    private Integer labelApiBatchSize;

    /**
     * 函数参数批处理大小（用于大模型批量标注函数参数）
     */
    private Integer labelFuncParamBatchSize;
}